3. Controls

Controls are Virtual Panels classes dedicated to manipulate Objects and control the flow of the program. There are two kinds of Controls - the buttons and the menus - which do the same thing - call attached user defined procedures (section 2.6). The difference is in their organization. Buttons are linked in button groups. Button groups in their turn are linked in what we call button system. The menu structure is declared in the special menu system function. Menu system function must be registered with the current button system in the program.

* State of the Control - the private data member keeps the state of button or menu item. There can be four states:

CRL_DISABLED - Control is disabled. It means that it is grayed on the screen and has no effect.

CRL_HLDISABLED - Control is disabled but currently highlighted, i.e. chosen, but pushing Enter on the keyboard does not lead to any effect.

CRL_ACTIVE - Control is enabled and highlighted and pushing Enter calls button or menu procedure.

CRL_ENABLED - Control is enabled but not highlighted.



Subsections